1. Field of the Invention
The present invention relates to a memory testing apparatus that is suitable for testing a semiconductor memory such as a memory constructed by a semiconductor integrated circuit (semiconductor integrated circuit memory; hereinafter referred to as IC memory), and more particularly, to a failure analysis memory for storing therein the test result of a semiconductor memory.
2. Description of the Related Art
FIG. 6 shows a basic configuration of the conventional semiconductor memory testing apparatus of such type. The illustrated semiconductor memory testing apparatus comprises a timing generator 11, a pattern generator 12, a waveform formatter 13, a logical comparator 14, and a failure analysis memory (FAM) 15.
The timing generator 11 generates, in order to control the test timing of the entire testing apparatus, a reference clock CLK and various kinds of timing signals (pulses) TS. Although a timing signal TS is applied only to the waveform formatter 13 in FIG. 6, it is needless to say that the timing signals are also applied to other units (apparatus, devices and circuits) of the testing apparatus including the logical comparator 14.
The pattern generator 12 generates, in synchronism with the reference clock CLK supplied from the timing generator 11, address data ADRD, test pattern data PTND, and control data CNTLD all of which are to be supplied to a semiconductor memory under test (hereinafter referred to as MUT) 16. These data signals are supplied to the waveform formatter 13. The waveform formatter 13 converts the inputted data signals, by the timing signals TS supplied from the timing generator 11, into an address signal ADR, a test pattern signal PTN and a control signal CNTL, respectively, each having a real waveform required for testing. These signals are applied to the MUT 16.
The write operation and the read-out operation of the MUT 16 are controlled by the control signal CNTL supplied thereto through the waveform formatter 13, so that a write operation of the test pattern signal PTN applied to the MUT 16 from the waveform formatter 13 and a read-out operation of the written test pattern signal from the MUT 16 can be carried out. The test pattern signal PTN having been written in the MUT 16 is read out therefrom later on, and the read-out response signal RPD is supplied to the logical comparator 14 where the response signal RPD is compared with an expected value signal EXP supplied from the pattern generator 12 to detect whether there is any anticoincidence between both two signals or not, and a decision is rendered that the MUT 16 is defective (failure) or not defective (pass).
The logical comparator 14 determines, when there is any anticoincidence between the two signals, that the memory cell of the MUT 16 at an address thereof from which the response signal RPD has been read out is defective, and generates a failure signal (data) FAIL indicating that fact. Usually, this failure signal FAIL is expressed by a logical xe2x80x9c1xe2x80x9d signal, and is stored in a memory cell of the failure analysis memory 15 specified by the address signal ADR supplied from the pattern generator 12. In general, the failure signal (data) is stored in the same address of the failure analysis memory 15 as that of the failure memory cell of the MUT 16.
On the contrary, when the response signal RPD coincides with the expected value signal EXP, the logical comparator 14 determines that the memory cell of the MUT 16 at an address thereof from which the response signal has been read out is defectless or normal, and generates a pass signal indicating that fact. This pass signal is expressed by a logical xe2x80x9c0xe2x80x9d signal, and is usually not stored in the failure analysis memory 15.
After the testing has been completed, a failure analysis for the MUT 16 is carried out with reference to the failure signals FAIL stored in the failure analysis memory 15. For example, in the case that the failure signals are utilized in carrying out a failure relief of the MUT, a failure map is created based on the read-out failure signals, and a decision is rendered as to whether the relief of the failure memory cells of the MUT 16 can be done or not.
FIG. 7 shows in outline a configuration of the failure analysis memory 15. The failure analysis memory 15 comprises a memory part 15A for storing therein a failure signal FAIL, and a control part 15B for controlling the memory part 15A such that the memory part 15A has the same data bit width (the number of bits) and the same word depth as those of the MUT 16. The control part 15B comprises an address formatting part 15B-1 to which an address signal ADR is inputted from the pattern generator 12, and a memory control part 15B-2 to which a failure signal FAIL is inputted from the logical comparator 14. Further, although not shown, to a data input terminal of the memory part 15A is supplied a failure signal FAIL from the logical comparator 14.
The address formatting part 15B-1 formats an address signal ADR supplied from the pattern generator 12, in accordance with the word structure of the MUT 16, into a higher order address signal (the most significant bit or several higher order bits including the most significant bit of the address signal ADR) MADR and a lower order address signal (the least significant bit or several lower order bits including the least significant bit od the address signal ADR) LADR separated from each other. The higher order address signal MADR is supplied to the memory control part 15B-2 as a signal for controlling an enable signal for a RAM (Random Access Memory) constituting the memory part 15A, thereby to control the connection of the memory part 15A in the direction of the word depth. The memory control part 15B-2 generates, based on the failure signal FAIL supplied frorn the logical comparator 14 and the higher order address signal MADR supplied from the address formatting part 15B-1, a write control signal WRSG, and supplies it to the memory part 15A.
The lower order address signal LADR is supplied to the memory part 15A as an address signal for accessing the memory part 15A. Accordingly, the addresses of the memory part 15A are accessed by lower order address signals LADR each supplied from the address formatting part 15B-1.
When both of the lower order address signal LADR supplied from the address formatting part 15B-1 and the failure signal FAIL supplied from the logical comparator 14 are logical xe2x80x9c1sxe2x80x9d, the write control signal WRSG outputted from the memory control part 15B-2 becomes effective or valid (logical xe2x80x9c1xe2x80x9d). As a result, the failure analysis memory 15 writes a logical xe2x80x9c1xe2x80x9d (corresponding to the generated failure signal FAIL) being applied to the data input terminal of the memory part 15A in the same address of the memory part 15A as that of the MUT 16. After the testing has been completed, the stored contents of the memory part 15A are read out therefrom, and the analysis of the failure memory cells (addresses) of the MUT 16 is performed. An address of the failure analysis memory 15 from which a logical xe2x80x9c1xe2x80x9d is read out corresponds to an address of the memory cell of the MUT 16 at which a failure has occurred.
Incidentally, in recent years, a demand for semiconductor memories that can operate at high rate or speed have been increased more and more, and some high-rate operating memories are already in practical use. One of the high-rate operating semiconductor memories includes a memory that operates in burst mode. Burst mode means, in this specification and claims, a mode in which, on the basis of an address signal supplied to a memory, the lower order address bit or bits of this address signal are changed to an address bit or bits (burst address) automatically generated within the memory which is, in turn, accessed by this address bit or bits. By high-rate generation of the burst address in the memory (by generating the burst address at high rate or speed), the write operation in and the read-out operation of the memory at high rate can be realized.
In order to test such a high-speed memory, it is required that failure signals generated at high rate must be stored in the failure analysis memory 15 of the memory testing apparatus. For this reason, the failure analysis memory 15 is constructed such that the memory part 15A thereof stores failure signals generated at high rate by its interleaved operation so as to store these high-rate failure signals therein. The interleaved operation means, in this specification and claims, an operating system in which there are provided a plurality of memory blocks each of which is constituted by a plurality of memories corresponding to the bit width of a memory under test, each memory usually having the same storage capacity as that of the memory under test, and the plurality of memory blocks are sequentially operated at timings of their operations shifted from one another to write signals therein. The number of memory blocks to be prepared is referred to as the number of ways of interleave. If the number of memory blocks is two, it is called a two-way interleaved operation. If the number of memory blocks is four, it is called a four-way interleaved operation. Since each memory block is also called a bank, the word xe2x80x9cbankxe2x80x9d will be used hereinafter.
FIG. 8 shows an example of configuration of the failure analysis memory 15 for performing a two-way interleaved operation. Since the failure analysis memory 15 operates in the two-way interleaved operation, the memory part 15A is constituted by a first and a second two banks BANK1 and BANK2.
There are provided a first flip-flop FF1 and a second flip-flop FF2 each having a data input terminal D to which a lower order address signal LADR from the address formatting part 15B-1 is inputted, and a third flip-flop FF3 and a fourth flip-flop FF4 each having a data input terminal D to which a write control signal WRSG from the memory control part 15B-2 is inputted. Moreover, there is provided a flip-flop FF0 for alternately outputting a first bank switching signal LD1 and a second bank switching signal LD2.
The first bank switching signal LD1 is a control signal for selecting the first bank BANK1, and is supplied to respective load terminals of the first and the third flip-flops FF1 and FF3. In addition, the second bank switching signal LD2 is a control signal for selecting the second bank BANK2, and is supplied to respective load terminals of the second and the fourth flip-flops FF2 and FF4. Each of these first to fourth flip-flops FF1-FF4 is a flip-flop having a load/hold function. Further, a clock CLK shown in FIG. 9A is supplied to each of clock terminals T of the flip-flops FF0-FF4 so that these flip-flops are controlled in synchronism with one another. One period T of this clock CLK corresponds to one operating period of the MUT 16 (one test period of the memory testing apparatus).
The flip-flop FF0 alternately generates, every time the clock CLK shown in FIG. 9A is applied thereto, the first bank switching signal LD1 (FIG. 9D) and the second bank switching signal LD2 (FIG. 9G) each having logical H (logical xe2x80x9c1xe2x80x9d). That is, the flip-flop FF0 outputs the second bank switching signal LD2 having logical L (logical xe2x80x9c0xe2x80x9d) when the first bank switching signal LD1 is in logical H, and outputs the first bank switching signal LD1 having logical L when the second bank switching signal LD2 is in logical H. When the bank switching signal LD1 or LD2 having logical H is supplied to each of the load terminals LD of the respective flip-flops FF1 and FF3 or each of the load terminals LD of the respective flip-flops FF2 and FF4 and the clock CLK is supplied to each of clock input terminals T of those flip-flops, the lower order address signal LADR and the write control signal WRSG being applied to the data input terminals D at that time are loaded into the corresponding flip-flops at the rising edge of the clock CLK.
The lower order address signal LADR outputted from the address formatting part 15B-1 is, as shown in FIG. 9B, a signal having the same period as the operating period T of the MUT 16, and the lower order addresses are generated, in this example, in the sequence of #1xe2x86x92#0xe2x86x92#1xe2x86x92#0xe2x86x92#0xe2x86x92 . . . The memory control part 15B-2 outputs, when the failure signal FAIL shown in FIG. 9C is inputted thereto, a write control signal WRSG having, in this example, its pulse duration (or width) of two times the operating period T when the lower order address signal is logical xe2x80x9c1xe2x80x9d as mentioned above. In the example shown in FIG. 9, the write control signal WRSG is in synchronous state with the failure signal FAIL shown in FIG. 9C. Since the first and the second bank switching signals LD1 and LD2 are alternately generated, each of these signals has a period of two times the operating period T, as shown in FIGS. 9D and 9G.
As can be easily understood from FIG. 9, when the first bank switching signal LD1 shown in FIG. 9D is logical H, the lower order address signal LADR shown in FIG. 9B supplied to the first flip-flop FF1 becomes #0, #0 and #1, and the write control signal WRSG supplied to the third flip-flop FF3 becomes logical L, logical H, and logical L. As a result, an address signal ADRI outputted from the first flip-flop FF1 becomes, as shown in FIG. 9E as BK1, #0, #0 and #1 each having a period of two times the operating period T, and is supplied to an address terminal Ad of the first bank BANK1. In addition, there is outputted from the third flip-flop FF3, as shown in FIG. 9F, a write command signal CS1 having its pulse duration of two times the operating period T and rising at the rising edge of the fourth clock CLK4 shown in FIG. 9A and falling at the rising edge of the sixth clock CLK6 shown in FIG. 9A. This write command signal CS1 is supplied to a write command input terminal CS of the first bank BANK1. Only during the time duration that the write command signal CS1 of logical H is applied to the write command input terminal CS of the first bank BANK1, the first bank BANK1 can write therein the logical xe2x80x9c1xe2x80x9d (corresponding to the generated failure signal FAIL) being applied to its data input terminal Di.
Similarly, when the second bank switching signal LD2 shown in FIG. 9G is logical H, the lower order address signal LADR shown in FIG. 9B supplied to the second flip-flop FF2 becomes #1, #1, #0 and #2, and the write control signal WRSG supplied to the fourth flip-flop FF4 becomes logical L, logical H, logical L and logical H. As a result, an address signal ADR2 outputted from the second flip-flop FF2 becomes, as shown in FIG. 9H as BK2, #1, #1 and #0 each having its period of two times the operating period T, and is supplied to an address terminal Ad of the second bank BANK2. In addition, there is outputted from the fourth flip-flop FF4, as shown in FIG. 9I, a write command signal CS2 having its pulse duration of two times the operating period T and rising at the rising edge of the third clock CLK3 shown in FIG. 9A and falling at the rising edge of the fifth clock CLK5 shown in FIG. 9A. The write command signal CS2 is supplied to a write command input terminal CS of the second bank BANK2. Only during the time duration that the write command signal CS2 of logical H is applied to the write command input terminal CS of the second bank BANK2, the second bank BANK2 can write therein the logical xe2x80x9c1xe2x80x9d (corresponding to the generated failure signal FAIL) being applied to its data input terminal Di.
As discussed above, since each of the first and the second flip-flops FF1 and FF2 holds the lower order address signal LADR which has been acquired therein at the rising edge of the clock CLK applied thereto when the load terminal LD thereof has been in logical H until the rising edge of the clock CLK applied to the flip-flop when the load terminal LD thereof is in logical H at the next time, the address signals ADR1 and ADR2 outputted respectively from these flip-flops FF1 and FF2 have, as shown in FIGS. 9E and 9H, their periods of two times the period of the lower order address signal LADR shown in FIG. 9B, respectively, and have their phases shifted by one operating period T of the MUT 16 from one another. Similarly, the write command signals CS1 and CS2 supplied to the write command nput terminals CS of the respective first and second banks BANK1 and BANK2 also have their pulse durations of two times the operating period T of the MUT 16, and have their phases shifted by one operating period T from one another. On the other hand, the first and the second banks BANK1 and BANK2 are alternately operated by the bank switching signals LD1 and LD2 with their phases shifted by one operating period T of the MUT 16 from each other. Accordingly, the memory part 15A operates with its period 2T (period shown in FIG. 9 as PFAM) which is twice the operating period T of the MUT 16. In other words, the memory part 15A operates at low rate or speed (at a rate of xc2xd of that of the MUT 16).
The first and the second banks BANK1 and BANK2 store, only during the time interval that the write command signals CS1 and CS2 are being applied to their write command input terminals CS, logical xe2x80x9c1xe2x80x9d being supplied to their data input terminals Di in the addresses specified by the address signals ADR1 and ADR2 supplied to their address terminals Ad at that time as a substitution for the generated failure signal FAIL, respectively. In the example shown in FIG. 9, since the second bank switching signal LD2 is in logical H when a failure signal FAIL is generated, a write command signal CS2 is generated at the rising edge of the third clock CLK3. As a result, a logical xe2x80x9c1xe2x80x9d is stored in the address #1 of the second bank BANK2.
In this manner, according to the aforementioned interleaved operation, even if failure signals are generated at high rate from a memory under test operating at high rate, these failure signals can be written in the failure analysis memory 15.
Incidentally, in order to store the failure signals in the failure analysis memory 15 by the aforementioned two-way interleaved operation, a memory having the same storage capacity as that of the MUT 16 must be prepared as each of the first and the second banks BANK1 and BANK2. Next, the reason thereof will be described.
The address sequence automatically generated within the MUT 16 includes an interleave sequence and a linear sequence. FIG. 10 shows a relationship between burst addresses generated in the both sequences in the case that the burst length is four. In FIG. 10, each of #0, #1, #2 and #3 represents a burst address, and each of A1, A2, A3 and A4 represents an address group in the interleave sequence.
For example, if it is assumed, in the linear sequence, that the first and the second banks BANK1 and BANK2 of the memory part 15A are accessed in the sequence of BANK1xe2x86x92BANK2xe2x86x92BANK1xe2x86x92BANK2, the internally generated address of the memory under test changes in the sequence of #0xe2x86x92#1xe2x86x92#2xe2x86x92#3 when the burst starting address is #0. The status of accessing to the memory part 15A of the failure analysis memory 15 in this case becomes the sequence of, as shown in FIG. 11A, BANK1 (#0)xe2x86x92BANK2 (#1)xe2x86x92BANK1 (#2)xe2x86x92BANK2 (#3).
Similarly, the internally generated address of the memory under test changes in the sequence of #1xe2x86x92#2xe2x86x92#3xe2x86x92#0 when the burst starting address is #1. The status of accessing to the memory part 15A in this case becomes the sequence of, as shown in FIG. 11B, BANK1 (#1)xe2x86x92BANK2 (#2)xe2x86x92BANK1 (#3)xe2x86x92BANK2 (#0).
It could be understood that in the both sequences, the same address is not accessed in succession. The pattern generator 12 has a function for generating this burst address in the similar manner to the case of generating the burst address within the memory under test. The pattern generator 12 outputs, separately from the address signal to be applied to the memory under test, an address signal containing this burst address to the failure analysis memory 15 so that failure signals generated in the case that the memory under test operates in the burst mode can also be stored in the failure analysis memory 15.
As is apparent from FIG. 10, assuming that at the starting point of the burst mode, the write operation is started without fail from, for example, the first bank BANK1, and the memory part 15A is accessed in the sequence of BANK1xe2x86x92BANK2xe2x86x92BANK1xe2x86x92BANK2, if the starting address of the burst mode changes in the sequence of #0xe2x86x92#1xe2x86x92#2xe2x86x92#3, all of these addresses #0-#3 must be provided in the first bank BANK1. Similarly, it is also necessary that all of the addresses #0-#3 are provided in the second bank BANK2.
Specifically, the address group A1 in the interleave sequence shown in FIG. 10 accesses the bank BANK1, the address group A2 accesses the bank BANK2, the address group A3 accesses the bank BANK1, and the address group A4 accesses the bank BANK2. In this manner, since all of the address groups A1, A2, A3 and A4 shown in FIG. 10 have the addresses #0-#3 provided therein respectively, it could be understood that the same number of addresses (storage capacity) as that of the memory under test must be provided in each of the banks.
As described above with reference to FIGS. 11A and 11B, the access status to the first and the second banks BANK1 and BANK2 of the memory part 15A in the interleaved operation becomes the sequence of, when the burst starting address is #0, BANK1 (#0)xe2x86x92BANK2 (#1)xe2x86x92BANK1 (#2)xe2x86x92BANK2 (#3), which results in that the addresses #1 and #3 in the first bank BANK1 are not accessed, and that the addresses #2 and #4 in the second bank BANK2 are not accessed. On the other hand, the access status to the first and the second banks BANK1 and BANK2 of the memory part 15A becomes the sequence of, when the burst starting address is #1, BANK1 (#1)xe2x86x92BANK2 (#2)xe2x86x92BANK1 (#3)xe2x86x92BANK2 (#0), which results in that the addresses #0 and #2 in the first bank BANK1 are not accessed, and the addresses #1 and #3 in the second bank BANK2 are not accessed.
What can be understood from FIG. 11 is that the amount of data to be actually written in each of the first and the second banks BANK1 and BANK2 is only xc2xd of the storage capacity of each bank. However, as mentioned above, since the burst starting address is not specified to each bank on entering into the burst mode, the addresses corresponding to all of the addresses of the memory under test must be provided in each of both the banks BANK1 and BANK2. Consequently, the storage capacity of each of the two banks BANK1 and BANK2 constituting the memory part 15A must be equal to the storage capacity of the memory under test, and hence there is a serious drawback in the conventional memory testing apparatus that the storage capacity of each bank of the memory part 15A cannot be reduced.
In the above discussion, the two-way interleaved operation has been explained. However, when the operating frequency of the memory under test MUT becomes high and the number of interleave ways is increased, the number of banks used in the memory part 15A of the failure analysis memory 15 is naturally increased as shown in FIG. 12. Therefore, when the storage capacity and the operating rate of the memory under test MUT are increased more and more, the number of memories used in the memory part 15A of the failure analysis memory 15 is further increased, resulting in a drawback that the storage capacity of the memory part 15A is massive, and the cost of the memory testing apparatus is increased as well as the physical size thereof becomes enormous.
It is an object of the present invention to provide a failure analysis memory in which the number of memories to be used therein is not increased even if the number of interleave ways is increased.
It is another object of the present invention to provide a semiconductor memory testing apparatus provided with a failure analysis memory that performs a multi-way interleaved operation and in which the storage capacity of the memory is decreased.
In order to achieve the above objects, in one aspect of the present invention, there is provided a failure analysis memory which is constructed such that a plurality of banks are operated in an interleaved operation and failure signals generated at high rate from a semiconductor memory under test are acquired into these banks, and comprises: bank control means for generating a bank switching signal by a lower order bit or bits of an address signal; bank selecting means for selecting either one of the plurality of banks to be operated in the interleaved operation by the bank switching signal outputted from the bank control means; and access means for accessing an address of a memory constituting the selected bank by an address signal composed of the remaining higher order bit or bits of the address signal.
In a preferred embodiment, the aforesaid failure analysis memory further includes: means for supplying a write command signal to the bank selected by the bank switching signal in the case that a failure signal is generated from the semiconductor memory under test.
In addition, the failure analysis memory further includes: lower order address selecting means for selecting and extracting at least the least significant bit of the address signal, and the bank control means outputs the bank switching signal in correspondence to a logical signal outputted from the lower order address selecting means.
Moreover, the aforesaid bank selecting means is a plurality of flip-flops each having a load/hold function, and the lower order bit or bits of the address signal are loaded onto one of the flip-flops selected by the bank switching signal outputted from the bank control means, thereby to select one bank.
Furthermore, the access means is a plurality of flip-flops each having a load/hold function, and an address signal composed of a higher order bit or bits of the address signal is loaded onto one of the flip-flops selected by the lower order bit or bits of the address signal, thereby to access a memory constituting one bank.
In another aspect of the present invention, there is provided a semiconductor memory testing apparatus provided with a failure analysis memory which is constructed such that a plurality of banks are operated in an interleaved operation and failure signals generated at high rate from a semiconductor memory under test are acquired into these banks, and the failure analysis memory comprises: bank control means for generating a bank switching signal by a lower order bit or bits of an address signal; bank selecting means for selecting either one of the plurality of banks to be operated in the interleaved operation by the bank switching signal outputted from the bank control means; and access means for accessing an address of a memory constituting the selected bank by an address signal composed of the remaining higher order bit or bits of the address signal.
With the construction of the present invention, it is sufficient that the memory part of the failure analysis memory may have its total storage capacity equal to the storage capacity of the memory under test without respect to the number of interleave ways. Therefore, there is obtained an advantage that the number of memories to be used in the failure analysis memory can be remarkably reduced.